<?php

/**
 * curl请求服务端（GET）
 * @param $url
 *
 * @return mixed
 */
function _curl($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HEADER, 0);

    $res = curl_exec($ch);
    curl_close($ch);

    return json_decode($res, true);
}

/**
 * 生成唯一字符串
 * @return string
 */
function takeUniqueStr(){
    return sprintf('%04X%04X-%04X-%04X-%04X-%04X%04X%04X',
                    mt_rand(0, 65535),
                    mt_rand(0, 65535),
                    mt_rand(0, 65535),
                    mt_rand(16384, 20479),
                    mt_rand(32768, 49151),
                    mt_rand(0, 65535),
                    mt_rand(0, 65535),
                    mt_rand(0, 65535)
                );
}

/**
 * 数组处理：二维转一维
 * @param $arr
 * @param $field
 *
 * @return mixed
 */
function explodeArr($arr, $field){
    foreach($arr as $key=>$val){
        $tmp[$key] = $val[$field];
    }
    return $tmp;
}

function randomKeys($length=8){
    $chars = array(
        'a','b','c','d','e','f','g','h','i','g','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z',
        'A','B','C','D','E','F','G','H','I','G','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
        '0','1','2','3','4','5','6','7','8','9'
    );
    $random_str = '';
    $keys = array_rand($chars, $length);
    for($i = 0;$i < $length; $i++){
        $random_str .= $chars[$keys[$i]];
    }
    return $random_str;

}

/**
 * 小程序场景值
 * @param $key
 *
 * @return mixed
 */
function getSceneValue ($key) {
    $arr = array(
        1001 => '发现小程序入口',
        1005 => '顶部搜索框的结果页',
        1006 => '发现栏小程序主入口搜索框的搜索结果页',
        1007 => '单人聊天会话中的小程序消息卡片',
        1008 => '群聊会话中的小程序消息卡片',
        1011 => '扫描二维码',
        1012 => '长按图片识别二维码',
        1013 => '手机相册选取二维码',
        1014 => '小程序模板消息',
        1017 => '前往体验版的入口页',
        1019 => '微信钱包',
        1020 => '公众号profile页相关小程序列表',
        1022 => '聊天顶部指定小程序入口',
        1023 => '安卓系统桌面图标',
        1024 => '小程序profile页',
        1025 => '扫描二维码',
        1026 => '附近小程序列表',
        1027 => '顶部搜索框搜索结果页 "使用过得小程序" 列表',
        1028 => '我的卡包',
        1029 => '卡券详情页',
        1031 => '长按图片识别一维码',
        1032 => '手机相册选取一维码',
        1034 => '微信支付完成页',
        1035 => '公众号自定义菜单',
        1036 => 'App分享消息卡片',
        1037 => '小程序打开小程序',
        1038 => '从另一个小程序返回',
        1039 => '摇电视',
        1042 => '添加好友搜索框的搜索结果页',
        1043 => '公众号模板消息',
        1044 => '带shareTicket的小程序消息卡片',
        1047 => '扫描小程序码',
        1049 => '手机相册选取小程序码',
        1052 => '卡券的使用门店列表',
        1053 => '搜一搜的结果页',
        1056 => '音乐播放器菜单',
        1058 => '公众号文章',
        1059 => '体验版小程序绑定邀请页',
        1064 => '微信连wifi状态栏',
        1067 => '公众号文章广告',
        1068 => '附近小程序列表广告',
        1072 => '二维码收款页面',
        1073 => '客服消息列表下发的小程序消息卡片',
        1074 => '公众号会话下发的小程序消息卡片'
    );
    return $arr[$key];
}